<template>
<!-- 
组件说明：
    1）仅限于微信浏览器生效
    2）引入就生效，不需要调用点击啥的
    2）参数说明： title：转发的标题；desc：转发的简介；link：转发的连接，只支持当前页面连接，可携带get参数；imgUrl：最好使用网络图片，本地貌似不生效；Sharing: 1、是分享到好友 默认是朋友圈
    3）成功的回调函数success
 -->
<div>
    <!-- <div class="Share_guidance" @click="closeShare"  v-if="shareshow"></div> -->
    <div></div>
</div>    
</template>
<script>
import wx from 'weixin-js-sdk'
export default {
    name: 'WebShare',
    data: function() {	
        return {
            innerHTML: '',
            // shareshow:false,
        }
    },
    mounted() {
        console.log('Sharing',this.Sharing);
        if(typeof Wechat !='undefined'){
            // console.log('进来判断了');
            this.WechatAndroid()
        }else{
            var ua = navigator.userAgent.toLowerCase();
            var isWeixin = ua.indexOf('micromessenger') != -1;
            // this.shareshow = true;
            if (isWeixin) {   //公众号
                this.share()
            }
        }
        // 不是微信浏览器设置也没用
    },
    /** 
     * 
     *  */ 
    methods: {
        // closeShare:function()
        // {
        //     this.shareshow = false;
        //     this.$emit('closeShare');
        // },
        share: function(){
            var that = this;
            console.log(that.title)
            console.log(that.desc)
            console.log(that.link)
            console.log(that.imgUrl)
            var url = location.href.split('#')[0];
            // var url = encodeURIComponent(location.href.split('#')[0]);
            // var url = location.href;
            // var url = 'http://fc.x.e000.com';
            that.$post(that.$path + '/index.php/api/v2/getJsapiTicket', {url: url}).then((res) => {
                if(res.code == 200){
                    wx.config({
                        debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来，若要查看传入的参数，可以在pc端打开，参数信息会通过log打出，仅在pc端时才会打印。
                        appId: res.data.appid, // 必填，公众号的唯一标识
                        timestamp: res.data.timestamp, // 必填，生成签名的时间戳
                        nonceStr: res.data.noncestr, // 必填，生成签名的随机串
                        signature: res.data.signature,// 必填，签名
                        jsApiList: ['checkJsApi', 'updateAppMessageShareData', 'updateTimelineShareData', 'onMenuShareTimeline', 'onMenuShareAppMessage', 'onMenuShareQQ', 'onMenuShareWeibo', 'onMenuShareQZone'] // 必填，需要使用的JS接口列表
                    });
                    wx.ready(function(){
                            console.log(that.title)
                            console.log(that.desc)
                            console.log(that.link)
                            console.log(that.imgUrl)
                        wx.checkJsApi({
                            jsApiList: ['updateAppMessageShareData', 'updateTimelineShareData', 'onMenuShareTimeline', 'onMenuShareAppMessage', 'onMenuShareQQ', 'onMenuShareWeibo', 'onMenuShareQZone'], // 需要检测的JS接口列表，所有JS接口列表见附录2,
                            success: function(res) {
                                console.log(res)
                            // 以键值对的形式返回，可用的api值true，不可用为false
                            // 如：{"checkResult":{"chooseImage":true},"errMsg":"checkJsApi:ok"}
                            }
                        });
                        // config信息验证后会执行ready方法，所有接口调用都必须在config接口获得结果之后，config是一个客户端的异步操作，所以如果需要在页面加载时就调用相关接口，则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口，则可以直接调用，不需要放在ready函数中。

                        wx.updateAppMessageShareData({ 
                            title: that.title, // 分享标题
                            desc: that.desc, // 分享描述
                            link: that.link, // 分享链接，该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
                            imgUrl: that.imgUrl, // 分享图标
                            success: function (res) {
                                // 设置成功
                                console.log('分享成功updateAppMessageShareData');
                                that.$emit("success", '');
                                // this.shareshow = false;
                            }
                        })
                        wx.updateTimelineShareData({ 
                            title: that.title, // 分享标题
                            link: that.link, // 分享链接，该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
                            imgUrl: that.imgUrl, // 分享图标
                            success: function (res) {
                                // 设置成功
                                console.log('分享成功updateTimelineShareData');
                                that.$emit("success", '');
                                // this.shareshow = false;
                            }
                        })
                        // wx.onMenuShareTimeline({
                        //     title: that.title, // 分享标题
                        //     link: that.link, // 分享链接，该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
                        //     imgUrl: that.imgUrl, // 分享图标
                        //     success: function (res) {
                        //     // 设置成功
                        //         console.log(res)
                        //         that.$emit("success", '');
                        //     }
                        // }),
                        // wx.onMenuShareAppMessage({
                        //     title: that.title, // 分享标题
                        //     desc: that.desc, // 分享描述
                        //     link: that.link, // 分享链接，该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
                        //     imgUrl: that.imgUrl, // 分享图标
                        //     type: '', // 分享类型,music、video或link，不填默认为link
                        //     dataUrl: '', // 如果type是music或video，则要提供数据链接，默认为空
                        //     success: function (res) {
                        //         console.log(res)
                        //         that.$emit("success", '');
                        //     }
                        // })
                        // wx.onMenuShareQQ({
                        //     title: that.title, // 分享标题
                        //     desc: that.desc, // 分享描述
                        //     link: that.link, // 分享链接
                        //     imgUrl: that.imgUrl, // 分享图标
                        //     success: function (res) {
                        //         // 设置成功
                        //         console.log(res)
                        //         that.$emit("success", '');
                        //     }
                        // })
                    });
                }
            })
            
        
        },
        WechatAndroid:function(){      
            var that = this;
            var Sharing = that.Sharing ? that.Sharing : '';
            var links = that.link;
            if(Sharing == 1 )
            {
                Sharing = Wechat.Scene.SESSION;    //群
            }
            else
            {
                Sharing = Wechat.Scene.TIMELINE;    //朋友圈
            }


            // 判断是否微信浏览器打开
            Wechat.isInstalled(function (installed) {   //安卓
                Wechat.share({
                    message: {
                        title: that.title,
                        description: that.desc,
                        thumb: that.imgUrl,
                        mediaTagName: "TEST-TAG-001",
                        messageExt: "这是第三方带的测试字段",
                        messageAction: "<action>dotalist</action>",
                        media: {
                                    type: Wechat.Type.WEBPAGE,
                                    webpageUrl: links
                                }
                    },

                   
                        scene: Sharing   // share to SESSION
                    
                }, function () {
                    that.$emit("success", '');
                    that.$openDialog({
                        src: require('../common/images/UI-11.png'),
                        title: '恭喜你分享成功',
                        okText: '确定',
                    });
                    // alert("分享成功");
                    // this.shareshow = false;
                }, function (reason) {
                    that.$openDialog({
                        src: require('../common/images/UI-08.png'),
                        title: '抱歉，分享失败' + reason,
                        okText: '确定',
                    });
                    // alert("分享失败: " + reason);
                    // this.shareshow = false;
                });




            }, function (reason) {    
               

                alert("分享失败: " + reason);
            });
        },
        // openShare:function()
        // {
        //     this.shareshow = false;
        // },
    },
    props: ['title', 'desc', 'link', 'imgUrl','Sharing'],
}
</script>
<style>

</style>